GCTAGS(1)

NAME
gctags - print cross reference list for gtags.

SYNOPSIS
gctags [-b] [-e] [-n] [-r] [-s] [-w] file ...

DESCRIPTION
Gctags print cross reference list for gtags(1) from the specified C, YACC, JAVA, and assembler source to standard output. Each line of output contains the object name, the line number which it appears, the file in which it is defined, and a line image separated by white-space. It's same with the output of ctags(1) with -x option.

Depending upon the options provided to gctags, objects will consist of function definitions, function references and other symbols. This command is the default parser of GLOBAL source code tag system.

-b  force level 1 block to begin when reach a '{' at the first column. (C only)

-e  force level 1 block to end when reach a '}' at the first column. (C only)

-n  suppress output of tags. It is useful to use with -w option.

-r  locate function references instead of function definitions. GTAGS file is needed at the current directory. (C and Java source only) By default, locate function definitions.

-s  collect symbols other than functions. By default, locate function definitions.

-w  print warning message.

The -r and -s options override each other; the last one specified determines the method used.

Files whose names end in.c or.h are assumed to be C source files and are searched for C style routine and macro definitions. Files whose names end in.y are assumed to be YACC source files. Files whose names end in .java are assumed to be Java source files. Files whose names end in.s or.S are assumed to be Assembler source files. Other files are searched for C style definitions.

Yacc files each have a special tag. Yyparse is the start of the second section of the yacc file.

DIAGNOSTICS
Gctags exits with a non 0 value if an error occurred, 0 otherwise. Duplicate objects are not considered errors.

SEE ALSO
btreeop(1), ex(1), global(1), gtags(1), htags(1), vi(1).

BUGS

Gctags relies on the input being well formed, and any syntactical errors will completely confuse it.

Assembler support is far from complete. It extracts only ENTRY() and ALTENTRY() from source file. Probably valid only for FreeBSD and Linux kernel source.

AUTHORS
Shigio Yamaguchi (shigio@wafu.netgate.net)

HISTORY
The gctags command appeared in FreeBSD 2.2.2.