Man page - getdefs(1)
Packages contains this manual
Manual
getdefs
NAMESYNOPSIS
DESCRIPTION
OPTIONS
Specify which definitions are of interest and what to say about them
specify how to number the definitions
Definition insertion options
specify which files to search for markers
Definition output disposition options:
OPTION PRESETS
FILES
EXIT STATUS
SEE ALSO
AUTHORS
COPYRIGHT
BUGS
NOTES
NAME
getdefs - AutoGen Definition Extraction Tool
SYNOPSIS
getdefs [ option-name value ]
All arguments are named options.
If no input argument is provided or is set to simply "-", and if stdin is not a tty , then the list of input files will be read from stdin .
DESCRIPTION
This program extracts AutoGen definitions from a list of source files. Definitions are delimited by /*=<entry-type> <entry-name>0fP and =*/0fP.
OPTIONS
Specify which definitions are of interest and what to say about them
defs-to-get= reg-ex Regexp to look for after the "/*=".
If you want
definitions only from a particular category, or even with
names matching particular patterns, then specify this
regular
expression for the text that must follow the
/*=
.
subblock=
sub-def
subblock definition names. This option may appear an
unlimited number of times.
This option is
used to create shorthand entries for nested definitions.
For example, with:
using subblock thus --subblock=arg=argname,type,null
and defining an arg thus arg: this, char *
will then
expand to:
arg = { argname = this; type = "char
*"; @
;}
The "this, char *" string is separated at the
commas, with the white
space removed. You may use characters other than commas by
starting
the value string with a punctuation character other than a
single or
double quote character. You may also omit intermediate
values by
placing the commas next to each other with no intervening
white space.
For example, "+mumble++yes+" will expand to:
arg = { argname = mumble; null = "yes";
@
;}.
listattr=
def
attribute with list of values. This option may appear an
unlimited number of times.
This option is
used to create shorthand entries for definitions that
generally appear several times. That is, they tend to be a
list of
values. For example, with:
listattr=foo
defined, the text:
foo: this, is, a, multi-list
will then expand to:
foo = βthisβ, βisβ, βaβ,
βmulti-listβ;
The texts are separated by the commas, with the white space
removed.
You may use characters other than commas by starting the
value string
with a punctuation character other than a single or double
quote
character.
specify how to number the definitions
ordering
[=
file-name
],
--no-ordering
Alphabetize or use
named file.
The
no-ordering
form will disable the option. This
option is enabled
by default.
By default,
ordering is alphabetical by the entry name. Use,
no-ordering
if order is unimportant. Use
ordering
with no argument to
order without case sensitivity. Use
ordering=<file-name>
if
chronological order is important. getdefs will maintain the
text
content of
file-name
.
file-name
need not
exist.
first-index=
first-index
The first index to apply to groups. This
option takes an integer number as its argument. The default
first-index
for this option is:
0
By default, the
first occurrence of a named definition will have an
index of zero. Sometimes, that needs to be a reserved value.
Provide
this option to specify a different starting point.
Definition insertion options
filelist [= file ] Insert source file names into defs.
Inserts the name
of each input file into the output definitions. If no
argument is supplied, the format will be:
infile = β%sβ;
If an argument is supplied, that string will be used for the
entry name
instead of
infile
.
assign=
ag-def
Global assignments. This option may appear an unlimited
number of times.
The argument to
each copy of this option will be inserted into the
output definitions, with only a semicolon attached.
common-assign=
ag-def
Assignments common to all blocks. This option may
appear an unlimited number of times.
The argument to
each copy of this option will be inserted into each
output definition, with only a semicolon attached.
copy=
file
File(s) to copy into definitions. This option may appear an
unlimited number of times.
The content of
each file named by these options will be inserted into
the output definitions.
srcfile [= file ] Insert source file name into each def.
Inserts the name
of the input file where a definition was found into
the output definition. If no argument is supplied, the
format will be:
srcfile = β%sβ;
If an argument is supplied, that string will be used for the
entry name
instead of
srcfile
.
linenum [= def-name ] Insert source line number into each def.
Inserts the line
number in the input file where a definition was found
into the output definition. If no argument is supplied, the
format
will be:
linenum = β%sβ;
If an argument is supplied, that string will be used for the
entry name
instead of
linenum
.
specify which files to search for markers
input=
src-file
Input file to search for defs. This option may appear
an unlimited number of times. This option is the default
option.
All files that
are to be searched for definitions must be named on the
command line or read from
stdin
. If there is only one
input
option and
it is the string, "-", then the input file list is
read from
stdin
. If
a command line argument is not an option name and does not
contain an
assignment operator (
=
), then it defaults to being an
input file name.
At least one input file must be specified.
Definition output disposition options:
output=
file
Output file to open. This option is a member of the
autogen class of options.
If you are not
sending the output to an AutoGen process, you may name
an output file instead.
autogen
[=
ag-cmd
],
--no-autogen
Invoke AutoGen with
defs. The
no-autogen
form will disable the option. This option is
enabled by
default. This option is a member of the autogen class of
options.
This is the
default output mode. Specifying
no-autogen
is
equivalent
to
output=-
. If you supply an argument to this
option, that program
will be started as if it were AutoGen and its standard in
will be set
to the output definitions of this program.
template= file Template Name.
Specifies the template name to be used for generating the final output.
agarg=
ag-opt
AutoGen Argument. This option may appear an unlimited
number of times. This option must not appear in combination
with any
of the following options: output.
This is a
pass-through argument. It allows you to specify any
arbitrary argument to be passed to AutoGen.
base-name=
name
Base name for output file(s). This option must not
appear in combination with any of the following options:
output.
When output is
going to AutoGen, a base name must either be supplied or
derived. If this option is not supplied, then it is taken
from the
template
option. If that is not provided either, then it
is set to the
base name of the current directory.
help Display usage information and exit.
more-help Pass the extended usage information through a pager.
save-opts
[=
cfgfile
] Save the option state to
cfgfile
.
The default is
the
last
configuration file listed in the
OPTION
PRESETS
section,
below. The command will exit after updating the config
file.
load-opts=
cfgfile
,
no-load-opts
Load options from
cfgfile
. The
no-load-opts
form will disable the loading of earlier
config/rc/ini
files.
--no-load-opts
is handled early, out of
order.
version
[{
v|c|n
}] Output version of program and exit. The
default mode
is βvβ, a simple version. The βcβ
mode will print copyright
information and βnβ will print the full
copyright notice.
OPTION PRESETS
Any option that is not marked as not presettable may be preset by loading values from configuration ("RC" or ".INI") file(s). The homerc file is " /dev/null ", unless that is a directory. In that case, the file " .getdefsrc " is searched for within that directory.
FILES
See OPTION PRESETS for configuration files.
EXIT STATUS
One of the
following exit values will be returned:
0 (EXIT_SUCCESS) Successful program execution.
1 (EXIT_FAILURE)
The operation failed or the command syntax was not
valid.
2 (EXIT_INVALID_INPUT) An input file was specified that is not a file
3 (EXIT_NO_MEM) Insufficient memory for operation
66 (EX_NOINPUT) A specified configuration file could not be loaded.
70 (EX_SOFTWARE)
libopts had an internal operational error. Please
report it to autogen-users@lists.sourceforge.net. Thank
you.
SEE ALSO
This program is documented more fully in the Getdefs section of the Add-On chapter in the AutoGen Info system documentation.
AUTHORS
Bruce Korb
COPYRIGHT
Copyright (C) 1999-2018 Bruce Korb all rights reserved. This program is released under the terms of the GNU General Public License, version 3 or later.
BUGS
Please send bug reports to: autogen-users@lists.sourceforge.net
NOTES
This manual page was AutoGen -erated from the getdefs option definitions.