Makefile: add GNU global tags support
GNU Global is another tags engine which is more like cscope in being able to support finding both references and definitions. You will be un-surprised to know it also integrates well with Emacs. The main benefit of integrating it into find-src-path is it takes less time to rebuild the database from scratch when you have a lot of build directories under your source tree. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-Id: <20210114165730.31607-3-alex.bennee@linaro.org>
This commit is contained in:
parent
8714e811a5
commit
b8a322549b
3
.gitignore
vendored
3
.gitignore
vendored
@ -7,6 +7,9 @@
|
|||||||
cscope.*
|
cscope.*
|
||||||
tags
|
tags
|
||||||
TAGS
|
TAGS
|
||||||
|
GPATH
|
||||||
|
GRTAGS
|
||||||
|
GTAGS
|
||||||
*~
|
*~
|
||||||
*.ast_raw
|
*.ast_raw
|
||||||
*.depend_raw
|
*.depend_raw
|
||||||
|
14
Makefile
14
Makefile
@ -253,6 +253,18 @@ ctags:
|
|||||||
rm -f "$(SRC_PATH)/"tags
|
rm -f "$(SRC_PATH)/"tags
|
||||||
$(find-src-path) -exec ctags -f "$(SRC_PATH)/"tags --append {} +
|
$(find-src-path) -exec ctags -f "$(SRC_PATH)/"tags --append {} +
|
||||||
|
|
||||||
|
.PHONY: gtags
|
||||||
|
gtags:
|
||||||
|
$(call quiet-command, \
|
||||||
|
rm -f "$(SRC_PATH)/"GTAGS; \
|
||||||
|
rm -f "$(SRC_PATH)/"GRTAGS; \
|
||||||
|
rm -f "$(SRC_PATH)/"GPATH, \
|
||||||
|
"GTAGS", "Remove old $@ files")
|
||||||
|
$(call quiet-command, \
|
||||||
|
(cd $(SRC_PATH) && \
|
||||||
|
$(find-src-path) | gtags -f -), \
|
||||||
|
"GTAGS", "Re-index $(SRC_PATH)")
|
||||||
|
|
||||||
.PHONY: TAGS
|
.PHONY: TAGS
|
||||||
TAGS:
|
TAGS:
|
||||||
rm -f "$(SRC_PATH)/"TAGS
|
rm -f "$(SRC_PATH)/"TAGS
|
||||||
@ -279,7 +291,7 @@ help:
|
|||||||
$(call print-help,all,Build all)
|
$(call print-help,all,Build all)
|
||||||
$(call print-help,dir/file.o,Build specified target only)
|
$(call print-help,dir/file.o,Build specified target only)
|
||||||
$(call print-help,install,Install QEMU, documentation and tools)
|
$(call print-help,install,Install QEMU, documentation and tools)
|
||||||
$(call print-help,ctags/TAGS,Generate tags file for editors)
|
$(call print-help,ctags/gtags/TAGS,Generate tags file for editors)
|
||||||
$(call print-help,cscope,Generate cscope index)
|
$(call print-help,cscope,Generate cscope index)
|
||||||
$(call print-help,sparse,Run sparse on the QEMU source)
|
$(call print-help,sparse,Run sparse on the QEMU source)
|
||||||
@echo ''
|
@echo ''
|
||||||
|
Loading…
Reference in New Issue
Block a user