Provided by: autogen_5.18.16-5_amd64 bug

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.