qemu-devel
[Top][All Lists]
Advanced

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

Re: [RFC PATCH] Makefile: add GNU global tags support


From: Ben Widawsky
Subject: Re: [RFC PATCH] Makefile: add GNU global tags support
Date: Fri, 8 Jan 2021 09:54:31 -0800

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.bennee@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
> 
> 



reply via email to

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