mirror of https://github.com/postgres/postgres
make_ctags did not include field members of structs since the commit
964d01ae90
.
For example, in the following field of RestrictInfo:
Selectivity norm_selec pg_node_attr(equal_ignore);
pg_node_attr was mistakenly interpreted to be the name of the field.
To fix this, add -I option to ctags command if the command is
Exuberant ctags or Universal ctags (for plain old ctags, struct
members are not included in the tags file anyway).
Also add "-e" and "-n" options to make_ctags. The -e option invokes
ctags command with -e option, which produces TAGS file for emacs. This
allows to eliminate duplicate codes in make_etags so that make_etags
just exec make_ctags with -e option.
The -n option allows not to produce symbolic links in each
sub directory (the default is producing symbolic links).
Author: Yugo Nagata
Reviewers: Alvaro Herrera, Tatsuo Ishii
Discussion: https://postgr.es/m/flat/20221007154442.76233afc7c5b255c4de6528a%40sraoss.co.jp
pull/105/head
parent
c68ec1b027
commit
d1e2a380cb
@ -1,16 +1,6 @@ |
||||
#!/bin/sh |
||||
|
||||
# src/tools/make_etags |
||||
|
||||
command -v etags >/dev/null || \ |
||||
{ echo "'etags' program not found" 1>&2; exit 1; } |
||||
|
||||
rm -f ./TAGS |
||||
|
||||
find `pwd`/ -type f -name '*.[chyl]' -print | |
||||
xargs etags --append -o TAGS |
||||
|
||||
find . \( -name CVS -prune \) -o \( -name .git -prune \) -o -type d -print | |
||||
while read DIR |
||||
do [ "$DIR" != "." ] && ln -f -s `pwd`/TAGS "$DIR" |
||||
done |
||||
cdir=`dirname $0` |
||||
dir=`(cd $cdir && pwd)` |
||||
exec $dir/make_ctags -e $* |
||||
|
Loading…
Reference in new issue