On 21-01-08 12:19:35, Alex Bennée wrote: > 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.ben...@linaro.org>
It might be worth mentioning that the Linux kernel has supported this for a long time now (10+ years). Having switched to gtags about 3 years ago, I think it's summarily better and would really like this to get merged. > --- > 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 > +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 '' > 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 > >