@@ -253,6 +253,13 @@ ctags:
rm -f "$(SRC_PATH)/"tags
$(find-src-path) -exec ctags -f "$(SRC_PATH)/"tags --append {} +
+.PHONY: gtags
+gtags:
+ rm -f "$(SRC_PATH)/"GTAGS
+ rm -f "$(SRC_PATH)/"GRTAGS
+ rm -f "$(SRC_PATH)/"GPATH
+ $(find-src-path) | gtags -f -
+
.PHONY: TAGS
TAGS:
rm -f "$(SRC_PATH)/"TAGS
@@ -279,7 +286,7 @@ help:
$(call print-help,all,Build all)
$(call print-help,dir/file.o,Build specified target only)
$(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,sparse,Run sparse on the QEMU source)
@echo ''
@@ -7,6 +7,9 @@
cscope.*
tags
TAGS
+GPATH
+GRTAGS
+GTAGS
*~
*.ast_raw
*.depend_raw
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> --- Makefile | 9 ++++++++- .gitignore | 3 +++ 2 files changed, 11 insertions(+), 1 deletion(-)