qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Alex Bennée" <alex.bennee@linaro.org>
Subject: [PATCH  v2 02/12] Makefile: add GNU global tags support
Date: Thu, 14 Jan 2021 16:57:20 +0000	[thread overview]
Message-ID: <20210114165730.31607-3-alex.bennee@linaro.org> (raw)
In-Reply-To: <20210114165730.31607-1-alex.bennee@linaro.org>

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>

---
v2
  - run in SRC_PATH
  - wrap in quiet-command
---
 Makefile   | 14 +++++++++++++-
 .gitignore |  3 +++
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index fb9923ff22..0c509a7704 100644
--- a/Makefile
+++ b/Makefile
@@ -253,6 +253,18 @@ ctags:
 	rm -f "$(SRC_PATH)/"tags
 	$(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
 TAGS:
 	rm -f "$(SRC_PATH)/"TAGS
@@ -279,7 +291,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 @@
 cscope.*
 tags
 TAGS
+GPATH
+GRTAGS
+GTAGS
 *~
 *.ast_raw
 *.depend_raw
-- 
2.20.1



  parent reply	other threads:[~2021-01-14 17:17 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-14 16:57 [PATCH v2 00/12] testing/next (tags!, shippable/travis deprecation, regression fixes, checkpatch) Alex Bennée
2021-01-14 16:57 ` [PATCH v2 01/12] tests/docker: Remove Debian 9 remnant lines Alex Bennée
2021-01-14 20:03   ` Willian Rampazzo
2021-01-14 16:57 ` Alex Bennée [this message]
2021-01-14 18:09   ` [PATCH v2 02/12] Makefile: add GNU global tags support Philippe Mathieu-Daudé
2021-01-14 16:57 ` [PATCH v2 03/12] shippable.yml: Remove jobs duplicated on Gitlab-CI Alex Bennée
2021-01-14 16:57 ` [PATCH v2 04/12] Add newline when generating Dockerfile Alex Bennée
2021-01-14 17:51   ` Philippe Mathieu-Daudé
2021-01-14 19:42   ` Willian Rampazzo
2021-01-14 16:57 ` [PATCH v2 05/12] Makefile: wrap ctags in quiet-command calls Alex Bennée
2021-01-14 18:07   ` Philippe Mathieu-Daudé
2021-01-14 19:46   ` Willian Rampazzo
2021-01-14 16:57 ` [PATCH v2 06/12] Makefile: wrap etags " Alex Bennée
2021-01-14 18:08   ` Philippe Mathieu-Daudé
2021-01-14 19:48   ` Willian Rampazzo
2021-01-14 16:57 ` [PATCH v2 07/12] Makefile: wrap cscope " Alex Bennée
2021-01-14 18:08   ` Philippe Mathieu-Daudé
2021-01-14 19:45   ` Willian Rampazzo
2021-01-14 16:57 ` [PATCH v2 08/12] docker: expand debian-amd64 image to include tag tools Alex Bennée
2021-01-14 17:50   ` Philippe Mathieu-Daudé
2021-01-14 17:52     ` Daniel P. Berrangé
2021-01-14 17:53       ` Philippe Mathieu-Daudé
2021-01-14 17:55         ` Daniel P. Berrangé
2021-01-14 19:41   ` Willian Rampazzo
2021-01-14 16:57 ` [PATCH v2 09/12] gitlab: move docs and tools build across from Travis Alex Bennée
2021-01-14 19:54   ` Willian Rampazzo
2021-01-14 16:57 ` [PATCH v2 10/12] Fix build with new yank feature by adding stubs Alex Bennée
2021-01-14 17:47   ` Philippe Mathieu-Daudé
2021-01-14 18:50     ` Alex Bennée
2021-01-14 16:57 ` [PATCH v2 11/12] gitlab: migrate the minimal tools and unit tests from Travis Alex Bennée
2021-01-14 17:57   ` Philippe Mathieu-Daudé
2021-01-14 19:00   ` Thomas Huth
2021-01-14 19:36   ` Willian Rampazzo
2021-01-14 16:57 ` [PATCH v2 12/12] scripts/checkpatch.pl: fix git-show invocation to include diffstat Alex Bennée
2021-01-14 18:05   ` Philippe Mathieu-Daudé
2021-01-14 19:51   ` Willian Rampazzo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210114165730.31607-3-alex.bennee@linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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 NNTP newsgroup(s).