[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[RFC PATCH] Makefile: add GNU global tags support

From: Alex Bennée
Subject: [RFC PATCH] Makefile: add GNU global tags support
Date: Fri, 8 Jan 2021 12:19:35 +0000

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(-)

diff --git a/Makefile b/Makefile
index fb9923ff22..66eec99685 100644
--- a/Makefile
+++ b/Makefile
@@ -253,6 +253,13 @@ ctags:
        rm -f "$(SRC_PATH)/"tags
        $(find-src-path) -exec ctags -f "$(SRC_PATH)/"tags --append {} +
+.PHONY: gtags
+       rm -f "$(SRC_PATH)/"GTAGS
+       rm -f "$(SRC_PATH)/"GRTAGS
+       rm -f "$(SRC_PATH)/"GPATH
+       $(find-src-path) | gtags -f -
        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  ''
diff --git a/.gitignore b/.gitignore
index b32bca1315..75a4be0724 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,6 +7,9 @@

reply via email to

[Prev in Thread] Current Thread [Next in Thread]