man gtags (Commandes) - create tag files for global.

NAME

gtags - create tag files for global.

SYNOPSIS

gtags [-c][-i][-I][-o][-P][-q][-v][-w][dbpath]

DESCRIPTION

Gtags recursively collect the source files under the current directory, pickup symbols and write the cross-reference data into tag files ('GTAGS', 'GRTAGS', 'GSYMS' and 'GPATH'). You should execute this command at the root of the source tree.

C, C++, yacc, java, PHP and Assembly source files are supported. 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 '.c++' '.cc' '.cpp' '.cxx' '.hxx' '.hpp' '.C' '.H' are assumed to be C++ source files. 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 '.php' '.php3' '.phtml' are assumed to be PHP 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.

OPTIONS

The following options are available:

-c, --compact
Make tag files with compact format.
--config name
Show the value of config variable name. If name is not specified then show whole of config entry.
--gtagsconf file
Load user's configuration from file.
--gtagslabel label
label is used as the label of configuration file. The default is default.
-i, --incremental
Update tag files incrementally. You had better use global(1) with the -u option.
-I, --idutils
Make index files for id-utils(1).
--info info
Pass info string to external system. Currently you can use it with -P option.
-o, --omit-gsyms
Suppress making 'GSYMS' file. Use this option if you don't use -s option of global(1).
-q, --quiet
Quiet mode.
-v, --verbose
Verbose mode.
-w, --warning
Print warning messages.
dbpath
The directory in which tag files are generated. The default is the current directory. It is useful when your source directory is on a read only device like CDROM.

EXAMPLES

	$ ls -F
	Makefile      src/    lib/
	$ gtags -v
	$ global -x main
	main              10 src/main.c  main (argc, argv) {

FILES

'GTAGS'
Tag file for function definitions.
'GRTAGS'
Tag file for function references.
'GSYMS'
Tag file for other symbols.
'GPATH'
Tag file for path of source files.
'/etc/gtags.conf', '$HOME/.globalrc'
Configuration file.

ENVIRONMENT

The following environment variables affect the execution of gtags:

GTAGSCONF
If this variable is set, its value is used as the configuration file. The default is '$HOME/.globalrc'.
GTAGSLABEL
If this variable is set, its value is used as the label of configuration file. The default is default.
GTAGSCACHE
If this variable is set, its value is used as the size of btree cache. The default is 500000 (bytes).

CONFIGURATION

The following configuration variables affect the execution of gtags. You can see the default value for each variable with the --config option.

GTAGS(string)
If this variable is set, its value is used as the command line of parser for GTAGS. The default is 'gtags-parser -dt %s'.
GRTAGS(string)
If this variable is set, its value is used as the command line of parser for GRTAGS. The default is 'gtags-parser -dtr %s'.
GSYMS(string)
If this variable is set, its value is used as the command line of parser for GSYMS. The default is 'gtags-parser -dts %s'.
skip(comma separated list)
Gtags skips files which listed in this list. As a special exception, gtags collect values from multiple skip variables. If the value ends with '/', it assumed as a directory and gtags skips all files under it. If the value start with '/', it assumed relative path from the root of source directory.
suffixes(comma separated list)
Suffixes of target source file. As a special exception, gtags collect values from multiple suffixes variables. This variable is obsoleted. If the langmap variable is defined gtags no longer refers this.
format(standard|compact)
Format of tag files. The default is standard. Compact format is same to -c(--compact).
icase_path(boolean)
Ignore case distinctions in the path. Suffixes check are affected by this capability.
langmap(comma separated list)
Language mapping. Each comma-separated map consists of the language name, a colon, and a list of file extensions. Default mapping is 'c:.c.h,:yacc:.y,:asm:.s.S,:java:.java,:cpp:.c++.cc.cpp.cxx.hxx.hpp.C.H,:php:.php.php3.phtml'.

DIAGNOSTICS

Gtags exits with a non 0 value if an error occurred, 0 otherwise.

MESSAGE FORMAT

Verbose message has important level. The most important level is 0, the second is 1 and so on. All the message has level numbers leading blanks.

SEE ALSO

gtags-parser(1), global(1), htags(1).

GNU GLOBAL source code tag system

(http://www.gnu.org/software/global/).

BUG

'GTAGS', 'GRTAGS' and 'GSYMS' are very large. In advance of using this command, check the space of your disk.

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

There is no concurrency control about tag files.

Symbols in Assembly source files are not extracted for 'GSYMS'.

AUTHOR

Tama Communications Corporation.

HISTORY

The gtags command appeared in FreeBSD 2.2.2.