From: Steven Rostedt <[email protected]> It is really annoying when I use emacs TAGS to search for something like "dev_name" and have to go through 12 iterations before I find the function "dev_name". I really do not care about structures that include "dev_name" as one of its fields, and I'm sure pretty much all other developers do not care either.
There's a "remove_structs" variable used by the scripts/tags.sh, which I'm guessing is suppose to remove these structures from the TAGS file, but it must do a poor job at it, as I'm always hitting structures when I want the actual declaration. Luckily, the etags program comes with an option "--no-members", which does exactly what I want, and I'm sure all other kernel developers want too. Create a new "no_members" variable and assign it to "--no-members" for the "TAGS" case and pass that to the etags program to remove structures. Signed-off-by: Steven Rostedt <[email protected]> --- Changes since v1: https://lore.kernel.org/all/[email protected]/ - Use a no_members variable instead of hard coding the --no-members into the etags call, as that can break some "tags" cases. (Michal Marek) - Rebase to the current decade. Yes, v1 is from 2013. I've been carrying this patch in my personal repos as a quilt entry where I would just push it when doing a "make TAGS". I also have the conversation still in my INBOX to remind me to send a v2. Talk about procrastination! It only took me 13 years to send the v2 :-p I'm still keeping the same Cc's. I wonder how many of them will be broken. :-/ scripts/tags.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts/tags.sh b/scripts/tags.sh index 243373683f98..018588014eed 100755 --- a/scripts/tags.sh +++ b/scripts/tags.sh @@ -305,7 +305,7 @@ exuberant() emacs() { setup_regex emacs asm c - all_target_sources | xargs $1 -a "${regex[@]}" + all_target_sources | xargs $1 -a $no_members "${regex[@]}" setup_regex emacs kconfig all_kconfigs | xargs $1 -a "${regex[@]}" @@ -334,6 +334,7 @@ if [ "${ARCH}" = "um" ]; then fi remove_structs= +no_members= case "$1" in "cscope") docscope @@ -353,6 +354,7 @@ case "$1" in rm -f TAGS xtags etags remove_structs=y + no_members=--no-members ;; esac -- 2.53.0
